import random
from Crypto.Util.number import *
import gmpy2
# from flag import flag

flag=""
flag = bytes_to_long(flag)
p = getPrime(512)
q = getPrime(512)
r = getPrime(512)
N = p*p*p*q*q*r
E = random.getrandbits(3) * N
assert E != 0
c = gmpy2.powmod(flag, E, N)
print(c)
print(N)
print(p)
print(r)
# 254405107303005845049072747258149485455665434531849341949389151702896351704377285067476806399735915847551051984934926645265066676195182212668342809240170275111601925685425108739633735306028738440813976431594863569098420495195211247259496523691182750966814434291138671594822376699489067358139495566395880145059037908529964205911131567968259107857590036018068978645060903255984751462867095474972084318246942230515795372922732450012495738566643657477922873319803490046893484493433788181603654210794341892738158118219924980457355211094042834795257379632330516037706451375827720587904837405865838650441538283621256535491641274818330647441525602168055479178687963531914961778234475318884588150397234095722213462400828744953497197126537474009027706337497767417837993861139340860874583027430907228716660953102425009174890588920766879848601641875277580421221804043645286722094547226197336752873572741091909840169196029400597100303993
# 821637946044802094902953070074543102306869884873579423162145698218212560752410698552506108846314463135908371234866705393800979683814845596389525129326843295858831422249359573708068647304839244720782685985712635619803869885580152819572638671856305962843339690425926129690760888646694946355455239998544856723512643532949252060312278317964664482052587982507958159258844472388626094774180039916713900974760162202618717715095611085672884887397115862509389558231090407267917488769658024219676982762849860539850223529342350530344977168605879645515110890101177408181561604973969678649331052536135175711781614723243018625804914041552004680786359005886756891564089784004207698042480302197023219264076080698310436288830578669279862026461034180820755901345813488788532773026518857742317030969388255891451584375641479739761793484573965281435630150744924011181628797817182465011004325359576146400420432678566110402359833633223404347714023
#9311389858490364943720442507785055171284652087229819685825097201889131032147259180480486964464071289391134460834678366517191750266970473336556845313099299
#7574044323095532570708874898079912819078129425978705352911750180288319220089479831579074114970296032516798538410455385107525890661740100367688530443421677